
package la.foton.atividade.controller;

import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.ViewScoped;
import la.foton.atividade.entity.Funcionalidade;
import la.foton.atividade.entity.Usuario;
import la.foton.atividade.service.FuncionalidadeService;
import la.foton.atividade.service.UsuarioService;

@ManagedBean(name = "usuarioBean")
@ViewScoped
public class UsuarioBean extends BaseBean
{

   /**
	 * 
	 */
   private static final long serialVersionUID = 1L;
   @ManagedProperty("#{usuarioService}")
   private UsuarioService usuServ;
   @ManagedProperty("#{funcionalidadeService}")
   private FuncionalidadeService funcionalidadeService;
   private Usuario usuario;
   private String login;
   private String senha;
   private List<Funcionalidade> listFuncionalidades;

   public UsuarioBean()
   {
      usuario = new Usuario();

   }

   public void salvar() {
	//	System.out.println("idf clube " + usuario.getId());
		if (usuario.getId() == null) {
         usuario.setLogin("paulo");
			usuario.setSenha("123456");
         Funcionalidade funcionalidade = new Funcionalidade();
         funcionalidade.setId(1);
         usuario.addFuncionalidades(funcionalidade);
			usuario = usuServ.createUsuario(usuario);
			//clube = new Clube();
			addInfoMessage("Usuario criado com sucesso.");
		} else {
			//usuServ.updateUsuario(usuario);
			addInfoMessage("Usuario alterado com sucesso.");
      }
		
//		if(usuario == null){
//			List<Usuario> usuariosList = usuServ.getAllUsuarios();			
//			
//			for (Usuario usuarioTmp : usuariosList) {
//				
//				if(usuarioTmp.getId()==1)
//				{
//					usuario = usuarioTmp;
//					
//					for (Funcionalidade funcionalidade : usuario.getFuncionalidades()) {
//						System.out.println("PERMISSAO: " + funcionalidade.getNome());
//					}
//				}
//				
//			}		
//			
//		}
	}

   public void atualizarListaFuncionalidades()
   {
      listFuncionalidades = funcionalidadeService.getAll();
   }

   public UsuarioService getUsuServ()
   {
      return usuServ;
   }

   public void setUsuServ(UsuarioService usuServ)
   {
      this.usuServ = usuServ;
   }

   public Usuario getUsuario()
   {
      return usuario;
   }

   public void setUsuario(Usuario usuario)
   {
      this.usuario = usuario;
   }

   public String getLogin()
   {
      return login;
   }

   public void setLogin(String login)
   {
      this.login = login;
   }

   public String getSenha()
   {
      return senha;
   }

   public void setSenha(String senha)
   {
      this.senha = senha;
   }

   public List<Funcionalidade> getListFuncionalidades()
   {
      return listFuncionalidades;
   }

   public void setListFuncionalidades(List<Funcionalidade> listFuncionalidades)
   {
      this.listFuncionalidades = listFuncionalidades;
   }

}
